--PROJECT：ascii string类型，可以随便定义，只要不使用,就行
PROJECT = "GPIO"
--VERSION：ascii string类型，如果使用Luat物联云平台固件升级的功能，必须按照"X.X.X"定义，X表示1位数字；否则可随便定义
VERSION = "1.0.0"

--加载日志功能模块，并且设置日志输出等级
require "log"
LOG_LEVEL = log.LOGLEVEL_TRACE

--log.info(PROJECT)

require "sys"
require "misc"
--gpio1和gpio4受VLCD电压域控制，此电压域默认关闭，需要手动打开，灯才能亮
pmd.ldoset(15, pmd.LDO_VLCD)

--加载gpio控制模块 cat.1模块开发板的灯是通过gpio来控制的
require "pins"
--gpio1为绿灯，gpio4为蓝灯，gpio5为红灯

--灯对应GPIO口配置为输出，默认输高电平
local pin1 = pins.setup(pio.P0_1, 0)
local pin4 = pins.setup(pio.P0_4, 0)   --贴片红灯
local pin13 = pins.setup(pio.P0_18, 0)
local pin22 = pins.setup(pio.P0_22, 0) --红灯
local pin19 = pins.setup(pio.P0_19, 0) --绿灯

--灯状态值
local level, num = {{1,0,0},{0,1,0},{0,0,1}}, 0

local id=3  
local result=adc.open(id)  
if result==1 then  
    log.info("adc",id,"**********************打开成功！");  
else
    log.info("adc",id,"=============失败 ！");  
end

local function read2()
	log.info("哈哈")
end

sys.timerLoopStart(read2,1000)

--起一个协程
sys.taskInit(
    function()
        while true do
		
	    pin4(1)
	--	log.info("贴片红灯开")
		
		sys.wait(1000)
	    pin22(1)
	--	log.info("插件红灯开")
	--	log.info("==============")
		
        sys.wait(1000)
	    pin4(0)
	--	log.info("贴片红灯关")
		
        sys.wait(1000)
	    pin22(0)
	--	log.info("插件红灯关")
		
        sys.wait(1000)
		end
    end
)
sys.taskInit(
	function()
	while 1 do
		local adcval, voltval=adc.read(3)  
		if adcval~=0xffff then  
		--	log.info("ADC的原始测量数据和电压值:", adcval, voltval)  
		sys.wait(1000)
		end
	end
	end

)
sys.taskInit(
	function()
		while 1 do
			local vb=misc.getVbatt()/1000
			local aa="电源电压："..vb.."V"
			log.info(aa )  
			sys.wait(1000)
		end
	end

)

--启动系统框架
sys.init(0, 0)
sys.run()